package offer2

/*
原题链接：
https://leetcode.cn/problems/zai-pai-xu-shu-zu-zhong-cha-zhao-shu-zi-lcof/?envType=study-plan&id=lcof&plan=lcof&plan_progress=bwt37je

剑指 Offer 53 - I. 在排序数组中查找数字 I
统计一个数字在排序数组中出现的次数。

示例 1:
输入: nums = [5,7,7,8,8,10], target = 8
输出: 2
*/

func countTarget(nums []int, target int) int {
	left, right := 0, len(nums)-1 //声明左右指针
	count := 0                    //统计个数
	for left <= right {           //左指针小于右指针, 持续遍历
		if nums[left] == target {
			count++
			left++
		} else if nums[right] == target {
			count++
			right--
		} else {
			left++
			right--
		}
	}
	return count
}
